package pe.gob.sunarp.entidad;

import java.io.Serializable;
import javax.persistence.*;
import java.util.Date;


/**
 * The persistent class for the SOLICITANTE database table.
 * 
 */
@Entity
@Table(name="SOLICITANTE")
public class Solicitante implements Serializable {
	private static final long serialVersionUID = 1L;
	private long solicitanteId;
	private String apeMat;
	private String apePat;
	private String email;
	private String nombres;
	private String numDocIden;
	private String razSoc;
	private String tpoPers;
	private Date tsCrea;
	private Solicitud solicitud;
	private TmDocIden tmDocIden;

    public Solicitante() {
    }


	@Id
	@GeneratedValue(strategy=GenerationType.AUTO)
	@Column(name="SOLICITANTE_ID", unique=true, nullable=false)
	public long getSolicitanteId() {
		return this.solicitanteId;
	}

	public void setSolicitanteId(long solicitanteId) {
		this.solicitanteId = solicitanteId;
	}


	@Column(name="APE_MAT", length=30)
	public String getApeMat() {
		return this.apeMat;
	}

	public void setApeMat(String apeMat) {
		this.apeMat = apeMat;
	}


	@Column(name="APE_PAT", length=30)
	public String getApePat() {
		return this.apePat;
	}

	public void setApePat(String apePat) {
		this.apePat = apePat;
	}


	@Column(length=40)
	public String getEmail() {
		return this.email;
	}

	public void setEmail(String email) {
		this.email = email;
	}


	@Column(length=40)
	public String getNombres() {
		return this.nombres;
	}

	public void setNombres(String nombres) {
		this.nombres = nombres;
	}


	@Column(name="NUM_DOC_IDEN", length=15)
	public String getNumDocIden() {
		return this.numDocIden;
	}

	public void setNumDocIden(String numDocIden) {
		this.numDocIden = numDocIden;
	}


	@Column(name="RAZ_SOC", length=100)
	public String getRazSoc() {
		return this.razSoc;
	}

	public void setRazSoc(String razSoc) {
		this.razSoc = razSoc;
	}


	@Column(name="TPO_PERS", nullable=false, length=1)
	public String getTpoPers() {
		return this.tpoPers;
	}

	public void setTpoPers(String tpoPers) {
		this.tpoPers = tpoPers;
	}


    @Temporal( TemporalType.DATE)
	@Column(name="TS_CREA", nullable=false)
	public Date getTsCrea() {
		return this.tsCrea;
	}

	public void setTsCrea(Date tsCrea) {
		this.tsCrea = tsCrea;
	}


	//bi-directional many-to-one association to Solicitud
    @ManyToOne
	@JoinColumn(name="SOLICITUD_ID", nullable=false)
	public Solicitud getSolicitud() {
		return this.solicitud;
	}

	public void setSolicitud(Solicitud solicitud) {
		this.solicitud = solicitud;
	}
	

	//bi-directional many-to-one association to TmDocIden
    @ManyToOne
	@JoinColumn(name="TIPO_DOC_ID")
	public TmDocIden getTmDocIden() {
		return this.tmDocIden;
	}

	public void setTmDocIden(TmDocIden tmDocIden) {
		this.tmDocIden = tmDocIden;
	}
	
}